package org.example.cascader.domain;

import lombok.Data;

import java.util.List;

@Data
public class ZyTreeDTO {
    private String value;    // 节点值: 祖父/父节点用zymc/syxwml，子节点用code
    private String label;   // 显示文本: 祖父/父节点用zymc/syxwml，子节点用name
    private Integer level;  // 节点层级: 1-祖父 2-父 3-子
    private List<ZyTreeDTO> children;

    // 转换为树形节点的静态方法
    public static ZyTreeDTO convert(BaseZyjbqk item, int level) {
        ZyTreeDTO dto = new ZyTreeDTO();
        switch(level) {
            case 1: // 祖父节点
                dto.setValue(item.getSyxwml());
                dto.setLabel(item.getSyxwml());
                break;
            case 2: // 父节点
                dto.setValue(item.getZymc());
                dto.setLabel(item.getZymc());
                break;
            case 3: // 子节点
                dto.setValue(item.getCode());
                dto.setLabel(item.getName());
                break;
        }
        dto.setLevel(level);
        return dto;
    }
}
